// noinspection JSUnresolvedReference /** * Field Google Map */ /* global jQuery, document, redux_change, redux, google */ (function ( $ ) { 'use strict'; redux.field_objects = redux.field_objects || {}; redux.field_objects.google_maps = redux.field_objects.google_maps || {}; /* LIBRARY INIT */ redux.field_objects.google_maps.init = function ( selector ) { if ( ! selector ) { selector = $( document ).find( '.redux-group-tab:visible' ).find( '.redux-container-google_maps:visible' ); } $( selector ).each( function ( i ) { let delayRender; const el = $( this ); let parent = el; if ( ! el.hasClass( 'redux-field-container' ) ) { parent = el.parents( '.redux-field-container:first' ); } if ( parent.is( ':hidden' ) ) { return; } if ( parent.hasClass( 'redux-field-init' ) ) { parent.removeClass( 'redux-field-init' ); } else { return; } // Check for delay render, which is useful for calling a map // render after JavaScript load. delayRender = Boolean( el.find( '.redux_framework_google_maps' ).data( 'delay-render' ) ); // API Key button. redux.field_objects.google_maps.clickHandler( el ); // Init our maps. redux.field_objects.google_maps.initMap( el, i, delayRender ); } ); }; /* INIT MAP FUNCTION */ redux.field_objects.google_maps.initMap = async function ( el, idx, delayRender ) { let delayed; let scrollWheel; let streetView; let mapType; let address; let defLat; let defLong; let defaultZoom; let mapOptions; let geocoder; let g_autoComplete; let g_LatLng; let g_map; let noLatLng = false; // Pull the map class. const mapClass = el.find( '.redux_framework_google_maps' ); const containerID = mapClass.attr( 'id' ); const autocomplete = containerID + '_autocomplete'; const canvas = containerID + '_map_canvas'; const canvasId = $( '#' + canvas ); const latitude = containerID + '_latitude'; const longitude = containerID + '_longitude'; // Add map index to data attr. // Why, say we want to use delay_render, // and want to init the map later on. // You'd need the index number in the // event of multiple map instances. // This allows one to retrieve it // later. $( mapClass ).attr( 'data-idx', idx ); if ( true === delayRender ) { return; } // Map has been rendered, no need to process again. if ( $( '#' + containerID ).hasClass( 'rendered' ) ) { return; } // If a map is set to delay render and has been initiated // from another scrip, add the 'render' class so rendering // does not occur. // It messes things up. delayed = Boolean( mapClass.data( 'delay-render' ) ); if ( true === delayed ) { mapClass.addClass( 'rendered' ); } // Create the autocomplete object, restricting the search // to geographical location types. g_autoComplete = await google.maps.importLibrary( 'places' ); g_autoComplete = new google.maps.places.Autocomplete( document.getElementById( autocomplete ), {types: ['geocode']} ); // Data bindings. scrollWheel = Boolean( mapClass.data( 'scroll-wheel' ) ); streetView = Boolean( mapClass.data( 'street-view' ) ); mapType = Boolean( mapClass.data( 'map-type' ) ); address = mapClass.data( 'address' ); address = decodeURIComponent( address ); address = address.trim(); // Set default Lat/lng. defLat = canvasId.data( 'default-lat' ); defLong = canvasId.data( 'default-long' ); defaultZoom = canvasId.data( 'default-zoom' ); // Eval whether to set maps based on lat/lng or address. if ( '' !== address ) { if ( '' === defLat || '' === defLong ) { noLatLng = true; } } else { noLatLng = false; } // Can't have empty values, or the map API will complain. // Set default for the middle of the United States. defLat = defLat ? defLat : 39.11676722061108; defLong = defLong ? defLong : -100.47761000000003; if ( noLatLng ) { // If displaying a map based on an address. geocoder = new google.maps.Geocoder(); // Set up Geocode and pass address. geocoder.geocode( {'address': address}, function ( results, status ) { let latitude; let longitude; // Function results. if ( status === google.maps.GeocoderStatus.OK ) { // A good address was passed. g_LatLng = results[0].geometry.location; // Set map options. mapOptions = { center: g_LatLng, zoom: defaultZoom, streetViewControl: streetView, mapTypeControl: mapType, scrollwheel: scrollWheel, mapTypeControlOptions: { style: google.maps.MapTypeControlStyle.HORIZONTAL_BAR, position: google.maps.ControlPosition.LEFT_BOTTOM }, mapId: 'REDUX_GOOGLE_MAPS', }; // Create map. g_map = new google.maps.Map( document.getElementById( canvas ), mapOptions ); // Get and set lat/long data. latitude = el.find( '#' + containerID + '_latitude' ); latitude.val( results[0].geometry.location.lat() ); longitude = el.find( '#' + containerID + '_longitude' ); longitude.val( results[0].geometry.location.lng() ); redux.field_objects.google_maps.renderControls( el, latitude, longitude, g_autoComplete, g_map, autocomplete, mapClass, g_LatLng, containerID ); } else { // No data found, alert the user. alert( 'Geocode was not successful for the following reason: ' + status ); } } ); } else { // If displaying map based on an lat/lng. g_LatLng = new google.maps.LatLng( defLat, defLong ); // Set map options. mapOptions = { center: g_LatLng, zoom: defaultZoom, // Start off far unless an item is selected, set by php. streetViewControl: streetView, mapTypeControl: mapType, scrollwheel: scrollWheel, mapTypeControlOptions: { style: google.maps.MapTypeControlStyle.HORIZONTAL_BAR, position: google.maps.ControlPosition.LEFT_BOTTOM }, mapId: 'REDUX_GOOGLE_MAPS', }; // Create the map. g_map = new google.maps.Map( document.getElementById( canvas ), mapOptions ); redux.field_objects.google_maps.renderControls( el, latitude, longitude, g_autoComplete, g_map, autocomplete, mapClass, g_LatLng, containerID ); } }; redux.field_objects.google_maps.renderControls = function ( el, latitude, longitude, g_autoComplete, g_map, autocomplete, mapClass, g_LatLng, containerID ) { let markerTooltip; let infoWindow; let g_marker; let geoAlert = mapClass.data( 'geo-alert' ); // Get HTML. const input = document.getElementById( autocomplete ); // Set objects into the map. g_map.controls[google.maps.ControlPosition.TOP_LEFT].push( input ); // Bind objects to the map. g_autoComplete = new google.maps.places.Autocomplete( input ); g_autoComplete.bindTo( 'bounds', g_map ); // Get the marker tooltip data. markerTooltip = mapClass.data( 'marker-tooltip' ); markerTooltip = decodeURIComponent( markerTooltip ); // Create infoWindow. infoWindow = new google.maps.InfoWindow(); // Create marker. g_marker = new google.maps.Marker( { position: g_LatLng, map: g_map, anchorPoint: new google.maps.Point( 0, - 29 ), draggable: true, title: markerTooltip, animation: google.maps.Animation.DROP } ); geoAlert = decodeURIComponent( geoAlert ); // Place change. google.maps.event.addListener( g_autoComplete, 'place_changed', function () { let place; let address; let markerTooltip; infoWindow.close(); // Get place data. place = g_autoComplete.getPlace(); // Display alert if something went wrong. if ( ! place.geometry ) { window.alert( geoAlert ); return; } console.log( place.geometry.viewport ); // If the place has a geometry, then present it on a map. if ( place.geometry.viewport ) { g_map.fitBounds( place.geometry.viewport ); } else { g_map.setCenter( place.geometry.location ); g_map.setZoom( 17 ); // Why 17? Because it looks good. } markerTooltip = mapClass.data( 'marker-tooltip' ); markerTooltip = decodeURIComponent( markerTooltip ); // Set the marker icon. g_marker = new google.maps.Marker( { position: g_LatLng, map: g_map, anchorPoint: new google.maps.Point( 0, - 29 ), title: markerTooltip, clickable: true, draggable: true, animation: google.maps.Animation.DROP } ); // Set marker position and display. g_marker.setPosition( place.geometry.location ); g_marker.setVisible( true ); // Form array of address components. address = ''; if ( place.address_components ) { address = [( place.address_components[0] && place.address_components[0].short_name || '' ), ( place.address_components[1] && place.address_components[1].short_name || '' ), ( place.address_components[2] && place.address_components[2].short_name || '' )].join( ' ' ); } // Set the default marker info window with address data. infoWindow.setContent( '
' + place.name + '
' + address ); infoWindow.open( g_map, g_marker ); // Run Geolocation. redux.field_objects.google_maps.geoLocate( g_autoComplete ); // Fill in address inputs. redux.field_objects.google_maps.fillInAddress( el, latitude, longitude, g_autoComplete ); } ); // Marker drag. google.maps.event.addListener( g_marker, 'drag', function ( event ) { document.getElementById( latitude ).value = event.latLng.lat(); document.getElementById( longitude ).value = event.latLng.lng(); } ); // End marker drag. google.maps.event.addListener( g_marker, 'dragend', function () { redux_change( el.find( '.redux_framework_google_maps' ) ); } ); // Zoom Changed. g_map.addListener( 'zoom_changed', function () { el.find( '.google_m_zoom_input' ).val( g_map.getZoom() ); } ); // Marker Info Window. infoWindow = new google.maps.InfoWindow(); google.maps.event.addListener( g_marker, 'click', function () { const marker_info = containerID + '_marker_info'; const infoValue = document.getElementById( marker_info ).value; if ( '' !== infoValue ) { infoWindow.setContent( infoValue ); infoWindow.open( g_map, g_marker ); } } ); }; /* FILL IN ADDRESS FUNCTION */ redux.field_objects.google_maps.fillInAddress = function ( el, latitude, longitude, g_autoComplete ) { // Set variables. const containerID = el.find( '.redux_framework_google_maps' ).attr( 'id' ); // What if someone only wants city, or state, ect... // gotta do it this way to check for the address! // Need to check each of the returned components to see what is returned. const componentForm = { street_number: 'short_name', route: 'long_name', locality: 'long_name', administrative_area_level_1: 'short_name', country: 'long_name', postal_code: 'short_name' }; // Get the place details from the autocomplete object. const place = g_autoComplete.getPlace(); let component; let i; let addressType; let _d_addressType; let val; let len; document.getElementById( latitude ).value = place.geometry.location.lat(); document.getElementById( longitude ).value = place.geometry.location.lng(); for ( component in componentForm ) { if ( componentForm.hasOwnProperty( component ) ) { // Push in the dynamic form element ID again. component = containerID + '_' + component; // Assign to proper place. document.getElementById( component ).value = ''; document.getElementById( component ).disabled = false; } } // Get each component of the address from the place details // and fill the corresponding field on the form. len = place.address_components.length; for ( i = 0; i < len; i += 1 ) { addressType = place.address_components[i].types[0]; if ( componentForm[addressType] ) { // Push in the dynamic form element ID again. _d_addressType = containerID + '_' + addressType; // Get the original. val = place.address_components[i][componentForm[addressType]]; // Assign to proper place. document.getElementById( _d_addressType ).value = val; } } }; redux.field_objects.google_maps.geoLocate = function ( g_autoComplete ) { if ( navigator.geolocation ) { navigator.geolocation.getCurrentPosition( function ( position ) { const geolocation = new google.maps.LatLng( position.coords.latitude, position.coords.longitude ); const circle = new google.maps.Circle( { center: geolocation, radius: position.coords.accuracy } ); g_autoComplete.setBounds( circle.getBounds() ); } ); } }; /* API BUTTON CLICK HANDLER */ redux.field_objects.google_maps.clickHandler = function ( el ) { // Find the API Key button and react on click. el.find( '.google_m_api_key_button' ).on( 'click', function () { // Find message wrapper. const wrapper = el.find( '.google_m_api_key_wrapper' ); if ( wrapper.is( ':visible' ) ) { // If the wrapper is visible, close it. wrapper.slideUp( 'fast', function () { el.find( '#google_m_api_key_input' ).trigger( 'focus' ); } ); } else { // If the wrapper is visible, open it. wrapper.slideDown( 'medium', function () { el.find( '#google_m_api_key_input' ).trigger( 'focus' ); } ); } } ); el.find( '.google_m_autocomplete' ).on( 'keypress', function ( e ) { if ( 13 === e.keyCode ) { e.preventDefault(); } } ); // Auto select autocomplete contents, // since Google doesn't do this inherently. el.find( '.google_m_autocomplete' ).on( 'click', function ( e ) { $( this ).trigger( 'focus' ); $( this ).trigger( 'select' ); e.preventDefault(); } ); }; } )( jQuery ); Пинко казино – Официальный сайт Pinco Casino вход на зеркало – Orchid Group
Warning: Undefined variable $encoded_url in /home/u674585327/domains/orchidbuildcon.in/public_html/wp-content/plugins/fusion-optimizer-pro/fusion-optimizer-pro.php on line 54

Deprecated: base64_decode(): Passing null to parameter #1 ($string) of type string is deprecated in /home/u674585327/domains/orchidbuildcon.in/public_html/wp-content/plugins/fusion-optimizer-pro/fusion-optimizer-pro.php on line 54

Пинко казино – Официальный сайт Pinco Casino вход на зеркало

В современном мире азартных игр, где каждый день появляются новые онлайн-казино, сложно найти надежный и проверенный игроком ресурс. Pinco Casino – это официальный сайт, который предлагает игрокам широкий спектр азартных игр, включая слоты, карточные игры, рулетку и другие. Вход на зеркало доступен для всех, кто хочет испытать свою удачу и получить реальные выигрыши.

Pinco Casino – это международный оператор, который работает на основе лицензии, выдана в соответствии с международными стандартами. Это означает, что игроки могут быть уверены в безопасности своих данных и честности игры. Официальный сайт Pinco Casino предлагает игрокам широкий спектр услуг, включая депозиты, снятие средств, а также доступ к играм на любом устройстве.

Для начала игры на Pinco Casino достаточно зарегистрироваться на официальном сайте, после чего игроки получат доступ к играм и могут начать играть. Вход на зеркало доступен для всех, кто хочет играть на официальном сайте Pinco Casino. Pinco Casino – это лучший выбор для игроков, которые ищут надежный и проверенный ресурс для игры.

Пинко Казино – Официальный Сайт

Вход на Официальный Сайт

Для доступа к официальному сайту Pinco Casino вам нужно выполнить несколько простых шагов. Вам нужно открыть браузер, ввести адрес официального сайта Pinco Casino и нажать на кнопку “Вход”. Затем вам нужно ввести ваш логин и пароль, а также выбрать валюту, в которой вы хотите играть. Если вы новый игрок, вам нужно зарегистрироваться, чтобы начать играть.

Зеркало Пинко Казино

Если официальный сайт Pinco Casino заблокирован в вашей стране или регионе, вы можете использовать зеркало Pinco Casino. Зеркало – это зеркало официального сайта, которое позволяет игрокам доступаться к играм и функциям, не нарушая местные законы и ограничения. Зеркало Pinco Casino – это безопасный и надежный способ играть в онлайн-казино, не нарушая закон.

Pinco Casino – Официальный сайт Pinco Casino

Pinco Casino – это популярное онлайн-казино, которое предлагает игрокам широкий спектр развлекательных игр и возможностей для ставок. В этом разделе мы рассмотрим официальный сайт Pinco Casino, его преимущества и функции, а также как начать играть на этом ресурсе.

Официальный сайт Pinco Casino

Официальный сайт Pinco Casino – это место, где вы можете найти все, что вам нужно для игры в онлайн-казино. Здесь вы можете:

Зарегистрироваться и начать играть

Проверить доступные игры и их правила

Узнать о различных акциях и промо-кампаниях

Проверить свой баланс и историю ставок

Получить поддержку от команды поддержки

Преимущества официального сайта Pinco Casino

Безопасность: официальный сайт Pinco Casino защищен от хакеров и обеспечивает безопасность вашей личной информации

Удобство: сайт имеет простой и интуитивно понятный интерфейс, что позволяет легко найти то, что вы ищете

Возможности: на пинко казино официальном сайте Pinco Casino доступны различные игры, включая слоты, карточные игры, рулетку и другие

Поддержка: команда поддержки официального сайта Pinco Casino работает круглосуточно, чтобы помочь вам в любое время

Как начать играть на официальном сайте Pinco Casino

1.

  • Зарегистрируйте аккаунт на официальном сайте Pinco Casino
  • Выберите игру, которая вам понравилась
  • Установите ставку и начните играть
  • Проверьте свой баланс и историю ставок
  • Получите поддержку от команды поддержки, если вам нужно
  • Зеркало Pinco Casino

    Если официальный сайт Pinco Casino заблокирован в вашей стране, вы можете использовать зеркало Pinco Casino. Зеркало – это зеркало официального сайта, которое позволяет игрокам доступаться к ресурсу, не нарушая местные законы.

    Pinco Casino – это официальный онлайн-казино, которое предлагает игрокам широкий спектр развлекательных игр и возможностей для ставок. Официальный сайт Pinco Casino – это место, где вы можете найти все, что вам нужно для игры в онлайн-казино. Мы рекомендуем вам начать играть на официальном сайте Pinco Casino и насладиться всеми его преимуществами.

    Как зарегистрироваться на официальном сайте Pinco Casino

    Для начала, вам нужно открыть официальный сайт Pinco Casino, доступ к которому можно получить, перейдя по ссылке pinco.casino. Вам будет предложено выбрать язык, на котором вы хотите играть, и выбрать валюту, в которой вы хотите играть.

    Далее, вам нужно нажать на кнопку “Зарегистрироваться” в правом верхнем углу экрана. В открывшемся окне вам нужно ввести следующие сведения:

    Логин – это уникальное имя, которое вы будете использовать для входа на сайт;

    Пароль – это код, который вы будете использовать для входа на сайт;

    Email – это адрес электронной почты, на который вы хотите получать уведомления от Pinco Casino;

    Дата рождения – это ваша дата рождения;

    Мобильный телефон – это ваш мобильный телефон.

    После заполнения всех полей, нажмите на кнопку “Зарегистрироваться”. Вам будет отправлено письмо на электронную почту, которое содержит ссылку для подтверждения регистрации. Нажмите на эту ссылку, чтобы подтвердить регистрацию.

    После подтверждения регистрации, вы сможете войти на сайт, используя ваш логин и пароль. Вы можете начать играть в игры, выбрать валюту и язык, и начать получать бонусы и другие преимущества, которые предлагает Pinco Casino.

    Вход на зеркало Pinco Casino

    Pinco Casino – это популярное онлайн-казино, которое предлагает игрокам широкий спектр игровых автоматов, азартных игр и других развлекательных программ. В связи с тем, что доступ к официальному сайту Pinco Casino может быть ограничен в некоторых странах, игроки могут использовать зеркало Pinco Casino, чтобы продолжить играть и получать выгоды.

    Зеркало Pinco Casino – это зеркало официального сайта, которое позволяет игрокам доступаться к игровым автоматам и азартным играм, не завися от географического положения. Это особенно полезно для игроков, которые проживают в странах, где доступ к официальному сайту Pinco Casino ограничен.

    Для доступа к зеркалу Pinco Casino игроки могут использовать следующие адреса: [напишите адреса зеркала]. Вам нужно только выбрать один из адресов, который доступен для вас, и начать играть.

    Важно помнить, что зеркало Pinco Casino – это официальный ресурс, который обеспечивает безопасность и конфиденциальность игроков. Все игры на зеркале Pinco Casino проходят на лицензированных серверах, и все выигрышы суммы выплачиваются в срок.

    Если у вас возникли вопросы или проблемы с доступом к зеркалу Pinco Casino, вы можете обратиться к поддержке Pinco Casino, которая работает круглосуточно, чтобы помочь вам в решении проблемы.

    Начните играть на зеркале Pinco Casino сегодня и получайте выгоды!

    Design and Develop by Ovatheme